import io.github.bonigarcia.wdm.WebDriverManager;
import io.github.bonigarcia.wdm.managers.EdgeDriverManager;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.edge.EdgeDriver;
import org.openqa.selenium.edge.EdgeOptions;

import java.util.List;

/**
 * 输入和输出文本都搜索相关的
 */


public class Demo1 {
    /**
     * 第一个自动化测试程序
     * @throws InterruptedException
     */
    public void test1() throws InterruptedException {
        // 由驱动管理程序下载驱动
        WebDriverManager.edgedriver().setup();
//        设置一个 edge 选择器
        EdgeOptions edgeOptions = new EdgeOptions();

        // 允许访问所以链接
        edgeOptions.addArguments("--remote-allow-origins=*");

//        驱动程序打开浏览器
        WebDriver webDriver = new EdgeDriver(edgeOptions);

//        打开百度
        Thread.sleep(2000);
        webDriver.get("https://www.baidu.com/ ");
        Thread.sleep(2000);

//        使用xpath 来确定输入框标签
        webDriver.findElement(By.xpath("//*[@id=\"kw\"]")).sendKeys("哪吒");
        Thread.sleep(2000);

//        点击搜索按钮
        webDriver.findElement(By.cssSelector("#su")).click();
        Thread.sleep(2000);

        webDriver.quit();
    }

    /**
     * 获取元素列表
     */

    public void test2() {
        // 下载 drive 驱动
        WebDriverManager.edgedriver().setup();

        // 配置器添加配置
        EdgeOptions edgeOptions = new EdgeOptions();
        edgeOptions.addArguments("--remote-allow-origins=*");

        // 生成一个 drive 对象
        WebDriver driver = new EdgeDriver(edgeOptions);

        // 设置访问的URL
        driver.get("https://www.baidu.com/");

        // 获取元素
        List<WebElement> elements = driver.findElements(By.xpath("//*[@id=\"hotsearch-content-wrapper\"]/li/a"));

        for (WebElement webElement: elements) {
            System.out.println(webElement.getAccessibleName());
        }

        // 关闭标签
        driver.quit();
    }


    /**
     * 清除文本框
     */

    public void test3() throws InterruptedException {
        // 驱动管理器下载Edge驱动
        EdgeDriverManager.edgedriver().setup();

        // 配置器设置选项
        EdgeOptions edgeOptions = new EdgeOptions();
        edgeOptions.addArguments("--remote-allow-origins=*");

        // 生成一个驱动程序的句柄
        EdgeDriver driver = new EdgeDriver(edgeOptions);

        // 设置需要访问URL
        driver.get("https://www.baidu.com/");
        Thread.sleep(3000);

        // 获取标签
        WebElement inputElement = driver.findElement(By.cssSelector("#kw"));
        inputElement.sendKeys("星球大战");
        Thread.sleep(3000);
//        点击搜索按钮
        WebElement clickEle = driver.findElement(By.cssSelector("#su"));
        clickEle.click();
        Thread.sleep(3000);

//        重新输入

        /**
         * 清除前面输入的文本，重新输入
         */
        inputElement.clear();
        inputElement.sendKeys("阿凡达");
        clickEle.click();
        Thread.sleep(3000);

//        关闭标签
        driver.quit();

    }

}



